<template>
<!-- 100vh:撑满全屏
linear-gradient(135deg, #1352f2, #3c82f5) 渐变色：角度，颜色1，颜色2-->
<div style="height: 100vh;background-image: linear-gradient(135deg, #1352f2, #3c82f5);overflow:hidden;">
  <el-container style="padding:30px">
    <el-header>
      <el-row :gutter="10">
        <el-col :span="3">
          <img src="/imgs/login/logo.png" style="height: 50px;">
        </el-col>
        <el-col :span="1">
          <img src="/imgs/login/auto.png" style="height: 50px;">
        </el-col>
        <el-col :span="1">
          <img src="/imgs/login/verticalLine.png" style="height: 50px;">
        </el-col>
        <el-col :span="19">
          <span style="color: #fff;font-size:30px;font-weight: bold;">智慧车辆运营管理系统</span>
        </el-col>
      </el-row>
    </el-header>
    <el-main>
      <el-row :gutter="40">
        <el-col :span="16">
          <img src="/imgs/login/bg.png" style="width:100%;margin-top:60px">
        </el-col>
        <el-col :span="8">
          <el-card style="margin-top:80px">
            <h3 style="text-align:center">用户登录</h3>
            <el-form label-position="top">
              <el-form-item label="用户名">
                <el-input placeholder="请输入用户名" v-model="user.username"></el-input>
              </el-form-item>
              <el-form-item label="密码">
                <el-input placeholder="请输入密码" v-model="user.password"></el-input>
              </el-form-item>
              <el-form-item>
                <el-button type="primary" style="width:100%;" @click="login">登录</el-button>
              </el-form-item>
            </el-form>
            <div style="color: #666;font-size: 14px;text-align:center;padding:10px 0;">
              (体验账号：tom 密码：123456)
            </div>
          </el-card>
        </el-col>
      </el-row>
    </el-main>
  </el-container>
</div>
</template>
<script setup>
import {ref} from "vue";
import axios from "axios";
import {ElMessage} from "element-plus";
import router from "@/router";

//1.定义对象用来保存用户输入的登录数据
const user=ref({
  username:'',
  password:''
});
//定义登录方法
const  login=()=>{
  console.log(user.value);
  //2.给后端服务器发送登录请求，这里需要借助axios!
  //增删改用post方法 查询用get方法
  axios.post(BASE_URL+'/v1/user/login',user.value)
      .then((response)=>{
        //3. .then()为回调函数，可以在此函数中处理接收到的后端响应
        //response是响应对象，response.data为后端返回(响应)的数据
        // console.log(response.data);
        //4.前端需要对拿到的后端显影结果做出对应处理
        if(response.data.code == 2000){
          ElMessage.success('登录成功！');
          // console.log(response.data);//JsonResult
          // console.log(response.data.data);//UserVO
          // console.log(JSON.stringify(response.data.data));字符串类型的UserVO
          /* 登录成功后，将后端返回的UserVO存入localStorage中 */
          /* localStorage维护的是字符创类型的键值对（String key：String Value） */
          localStorage.setItem('user',JSON.stringify(response.data.data))
          //登陆成功后会被跳转至首页，router/index.js配置了会重定向到/user用户列表页
          router.push('/');
        }else {
          ElMessage.error(response.data.msg);
          user.value={username: '',password: ''}//登录失败清空表单输入框
        }
      })
}
</script>


<style scoped>

</style>